package chapter03;

/**
 *创建学生类
 *  学生类是所有学生的抽象
 */
public class demo1 {
    static class Student{
        String name;// 字符类String 学生类名字属性
        int age;//学生类的年龄属性
        String gender;//性别属性
        // 学生类的方法 (模仿现实世界对象的动作)
        void read(){
            System.out.println("大家好,我是"+name+",我在学习！");
        }
        /**访问权限
         * private 私有访问权限,只能类本身使用 例如read内使用
         * default 默认权限,本包内可以使用 例如chapter03内
         * protected 受保护权限 类成员访问
         * public 公共权限
         */
        public  void write(){
            System.out.println(name+"正在code...");
        }
    }

    public static class Demo01 {
        public static void main(String[] args) {
            /**
             * 创建对象
             * 对象是指该类下 具体的某一个实体
             * 在代码中类不占用空间
             * 创建对象计算机需要给对象划分具体的空间用来存放
             * 划分空间的方式就是关键字 new
             */
            Student stu = new Student();
            /**
             * new Student() 划分学生类的空间
             * Student stu 学生类型的变量stu
             */
            stu.name = "猪小明";// 输入该学生具体姓名
            stu.age = 28;
            stu.gender = "男";
            //stu.read();//让学生执行报姓名动作
            Student stu1 = new Student();
            stu1.name = "蘑菇头";
            // stu1.read();
            // 对象引用(参照逃课替答到)
            Student stu3 = stu1;
            stu3.name = "茅台";
            stu.read();
            stu1.read();
            stu3.read();
        }
    }
}
